home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 1997 November & December / Amiga-CD 1997 #11-12.iso / pd-disketten / ungepackt / 9_95 / apd-9-95-2 / arexx-workshop / arexxmanager2.1.rx / readme.dok.2.1 < prev    next >
Text File  |  1996-01-25  |  18KB  |  375 lines

  1.  
  2.  
  3.  
  4.  
  5.                  =========================================
  6.                  ||                                     ||
  7.                  ||   A r e x x M a n a g e r   2 . 1   ||
  8.                  ||                                     ||
  9.                  =========================================
  10.  
  11.  
  12.  
  13.  
  14.                          Autor: Karsten Wysocki
  15.                                 An der Mühle 3
  16.                                 38372 Büddenstedt
  17.  
  18.                    Entwicklungswerkzeug: ArexxManager
  19.  
  20.  
  21.  
  22.  
  23.   ArexxManager 2.1 ist ein Update zu ArexxManager.
  24.  
  25.   Für Benutzer der vorherigen Version:
  26.       Beachten Sie Bitte die Änderungen und Ergänzungen:
  27.                  ArexxShell: Beispiele und nachfolgende Absätze
  28.               ScriptManager: [Edit]
  29.                            & [Launch]
  30.                            & [VCopy] <- NEU!!!
  31.             ResourceManager: [Add Lib]
  32.                            & [Libs] <- früher Show Libs
  33.  
  34.   Weitere Änderungen zur Vorversion:
  35.       - Bessere Editiermöglichkeiten in der ArexxShell (wie in DOS-Shell).
  36.       - Die Datei-Requester des Script-Managers sind nicht mehr auf das
  37.         REXX:-Verzeichnis fixiert. Der ScriptManager merkt sich das zu-
  38.         letzt benutzte Verzeichnis und den Dateinamen.
  39.       - Die Launch-Funktion des ScriptManagers erzeugt nur noch dann ein
  40.         Ausgabefenster, wenn Fehler im Programm auftreten oder vom Pro-
  41.         gramm Ausgaben erzeugt werden.
  42.       - Neue Funktion in ScriptManager: [VCopy] (siehe Beschreibung)
  43.       - Die vom ResourceManager erzeugten Listen der Show-Funktionen wer-
  44.         den jetzt alphabetisch sortiert und lassen sich bei Überlänge Sei-
  45.         weise durchblättern. Die einzige Ausnahme ist die Funktion [Libs],
  46.         die Liste der Libraries wird in der Such-Reihenfolge für Funkti-
  47.         onsaufrufe ausgegeben.
  48.       - Code-Optimierung bei allen Komponenten des ArexxManagers
  49.  
  50.  
  51.  
  52.  
  53.   Einleitung:
  54.   ===========
  55.   Der ArexxManager ist ein Werkzeug für angehende und professionelle
  56.   Arexx-Programmierer. ArexxManager ist ein komplett in Arexx program-
  57.   miertes und multitasking-fähiges Programmsystem. Es besteht aus drei
  58.   im multitasking laufenden Komponenten. Das Programm ArexxShell erzeugt
  59.   zwei Fenster, eins zu Ausgabe und eins zur Eingabe. Damit können inter-
  60.   aktiv Arexx-Kommandos und Library-Funktionen getestet werden. Mit dem
  61.   Programm ScriptManager können Arexx-Scripts verwaltet, bearbeitet und
  62.   getestet werden. Der ResourceManager ermöglicht es dem Arexx-Programmie-
  63.   rer die Arexx-Resourcen auf bequeme Art einzusehen und zu verwalten. Auch
  64.   die Arexx-Trace-Console (TCO, TCC) läßt sich hiermit aktivieren und de-
  65.   aktivieren. Das vierte Programm, ArexxManager, gibt dem Benutzer die Mög-
  66.   lichkeit alle drei System-Komponenten bequem gleichzeitig mit einem Mouse-
  67.   click zu starten. Die Programme können jedoch auch einzeln gestartet und
  68.   benutzt werden.
  69.  
  70.   ArexxManager benutzt die apig.library von Ronnie E. Kelly, die z. B. auf
  71.   Fish-Disk 634 erhältlich ist. Laut beiliegendem Text wird die apig.library
  72.   von Ronnie E. Kelly zu Public Domain erklärt und ist frei kopierbar und
  73.   benutzbar.
  74.  
  75.  
  76.  
  77.  
  78.   Systemvoraussetzungen:
  79.   ======================
  80.   Um ArexxManager zu benutzen benötigen Sie System 2.x oder höher.
  81.   Arexx muß installiert sein. Das heißt, in der Startup-Sequence muß
  82.   der Arexx-Handler (RexxMast) gestartet werden, die Arexx-Programme im
  83.   REXXC-Verzeichnis des Systems müssen vorhanden sein und das Verzeichnis
  84.   muß als Pfad in der Startup-Sequence eingetragen sein (path sys:rexxc add),
  85.   die Arexx-Libraries (rexxsyslib.-, rexxsupport.- und rexxhost.library)
  86.   müssen sich im LIBS:-Verzeichnis befinden und es muß ein Verzeichnis für
  87.   Arexx-Scripts existieren, daß in der Startup-Sequence oder im User-Startup
  88.   als REXX: assigned sein muß (assign REXX: laufwerkname:pfad).
  89.  
  90.  
  91.  
  92.  
  93.   Installation:
  94.   =============
  95.   Schieben Sie die ArexxManager-Schublade von der Diskette in ein von Ihnen
  96.   gewünschtes Festplattenverzeichnis. Um bequem mit ArexxManager arbeiten zu
  97.   können, aktivieren Sie die ArexxMananger-Schublade im Festplattenverzeich-
  98.   nis und wählen dann in der Workbench-Titelleiste "Icons/Leave out". Nun ha-
  99.   ben Sie die ArexxManager-Schublade direkt auf der Workbench. Positionieren
  100.   Sie die Schublade und fixieren Sie sie dann mit "Icons/Snapshot". Öffnen
  101.   Sie nun die ArexxManager-Schublade und doppelklicken Sie das CopyLib-
  102.   Icon. Nun wird die von ArexxManager benötigte apig.library in Ihr LIBS:-
  103.   Verzeichnis kopiert.
  104.  
  105.   Danach ist die Installation abgeschlossen.
  106.  
  107.  
  108.  
  109.  
  110.   Programmbeschreibungen:
  111.   =======================
  112.  
  113.  
  114.   ArexxManager:
  115.   -------------
  116.   Der ArexxManager dient zum gleichzeitigen Starten der einzelnen Programme
  117.   ArexxShell, ScriptManager und ResourceManager. Diese Komponenten können
  118.   jedoch auch einzeln über Ihr eigenes Icon gestartet und benutzt werden.
  119.  
  120.  
  121.   ArexxShell:
  122.   -----------
  123.   Die Benutzeroberfläche von ArexxShell besteht aus zwei Fenstern. Im Einga-
  124.   be fenster können Arexx-Kommandos und Funktionsaufrufe eingegeben werden.
  125.   Das Ergebnis erscheint dann im Ausgabefenster. Ausgegeben werden jeweils
  126.   das Ergebnis des Kommandos, die Adresse an die das Kommando geschickt wur-
  127.   de, der ReturnCode (RC) und das zurückgelieferte Resultat (RESULT). Im
  128.   Fehlerfall erscheint die entprechende Arexx-Fehlermeldung.
  129.  
  130.   Eingaben, die in der ArexxShell fehlerfrei abgearbeitet wurden, können
  131.   Sie mit der gleichen Syntax in Ihrem Arexx-Programm-Code verwenden. Da-
  132.   durch eignet sich die ArexxShell besonders für angehende Arexx-Program-
  133.   mierer sehr gut zum Experimentieren.
  134.  
  135.   Beispiele:
  136.             Eingabe: say "Hallo"
  137.             Ausgabe: Hallo
  138.                      ADDRESS:REXX
  139.                      RC:0  Result:
  140.  
  141.             Eingabe: say show(files)
  142.             Ausgabe: STDOUT STDIN
  143.                      ADDRESS:REXX
  144.                      RC:0  Result:
  145.  
  146.             Eingabe: say show(
  147.             Ausgabe: +++ Error 42 in Line 1: Unbalanced parentheses
  148.                      Command returned 10/42: Unbalanced parentheses
  149.                      rx failed returncode 10
  150.  
  151.             Eingabe : address command dir
  152.             Ausgabe :     ArexxManager2.1(dir)
  153.                        apig.library                 ArexxManager2.1
  154.                        ArexxManager2.1.info         ArexxShell2.1
  155.                          .                            .
  156.                          .                            .
  157.                          .                            .
  158.  
  159.                       ADDRESS:COMMAND
  160.                       RC:0  RESULT:RESULT
  161.  
  162.             Eingabe: address 'ScriptManager' 'DIE'
  163.                Diese Message veranlaßt den ScriptManager sich selbst
  164.                zu beenden und das ScriptManager-Fenster schließt sich.
  165.             Ausgabe: ADDRESS:'SCRIPTMANAGER'
  166.                      RC:0  RESULT:RESULT
  167.  
  168.          Starten des Echtzeitvideodigitzers VLab, danach:
  169.             Eingabe: address vlab
  170.             Ausgabe: ADDRESS:VLAB
  171.                      RC:0  Result:
  172.             Eingabe: 'aslrequest "files"'
  173.                Daraufhin produziert VLab einen Datei-Requester,
  174.                nach Auswahl der Datei "Ram Disk:IFR.0006" aus dem Requester:
  175.             Ausgabe: ADDRESS:VLAB
  176.                      RC:0  Result:Ram Disk:IFR.0006
  177.  
  178.   Es ist auch möglich eine ganze Folge von Kommandos einzugeben. Dabei ver-
  179.   wendet man das Semikolon als Trennzeichen. Die Eingabe
  180.                      address vlab;'aslrequest "files"'
  181.   ergibt dann das gleiche Ergebnis wie das obenstehende Beispiel. Anbei ein
  182.   kleiner Tip: Das Hochkomma (') verbirgt sich auf der deutschen Tastatur
  183.   unter Alt/Ä.
  184.  
  185.   Fehlerhafte Eingaben können mit der Backspace- oder den Cursor- und der
  186.   Del-Taste korrigiert werden. Mit der Tasten Cursor-Up und Cursor-Down
  187.   können Sie Ihre letzten Eingaben zurückholen.
  188.  
  189.   Verlassen können Sie die ArexxShell durch Eingabe von exit oder x.
  190.   Das Ausgabefenster schließt sich dann nach ca. 2 Sekunden automatisch.
  191.  
  192.  
  193.   ScriptManager:
  194.   --------------
  195.   Der ScriptManager dient zum Verwalten und Bearbeiten Ihrer Arexx-Scripts.
  196.   Alle Gadgets im ScriptManager erzeugen einen Datei-Requester. Erst nach
  197.   Auswahl einer Datei aus dem Requester wird die gewählte Funktion ausge-
  198.   führt. Bei Wahl von [Delete] (Löschen), erscheint nach der Auswahl von
  199.   Dateien zusätzlich ein Sicherheits-Requester mit dem Sie das Löschen der
  200.   Dateien explizit bestätigen müssen. In den Datei-Requestern ist das Ver-
  201.   zeichnis REXX: für Arexx-Scripts voreingestellt.
  202.  
  203.   Beschreibung der einzelnen Funktionen:
  204.  
  205.   [Edit] Dient zum Editieren von Arexx-Scripts. Nach Auswahl eines Scripts
  206.          aus dem Datei-Requester wird ein Editor gestartet mit dem man das
  207.          im Requester auswählte Script editieren kann. Beim Erststart von
  208.          ScriptManager ist als Editor ED voreingestellt. Wenn Sie einen
  209.          anderen Editor bevorzugen, können Sie den von Ihnen gewünschten
  210.          Editor mit dem Gadget [Change Editor] dauerhaft einstellen.
  211.          Wenn Sie im Datei-Requester keine Datei auswählen und statt
  212.          [Cancel] [ OK ] drücken, wird der Editor auch gestartet, jedoch
  213.          keine Datei geladen.
  214.          Noch ein Tip: Der Arexx-Interpreter ist nicht in der Lage Programme
  215.          zu laden, in deren Namen Leerzeichen vorkommen. Achten Sie also
  216.          beim Speichern Ihrer Arexx-Scripts mit Ihrem Editor darauf, keine
  217.          Programmnamen die Leerzeichen enthalten zu vergeben.
  218.  
  219.   [Launch] Mit dieser Funktion können Sie Ihre Arexx-Scripts starten.
  220.          Wenn in Ihrem Script ein Fehler auftritt, oder Sie z.B. mit den
  221.          Kommandos SAY oder ECHO eine Ausgabe erzeugen, wird ein Fenster
  222.          geöffnet in dem die Fehlermeldung bzw. Ihre Ausgabe erscheint. Im
  223.          Kopf des Ausgabe-Fensters ist der Name des dazugehörigen Arexx-
  224.          Programms eingetragen. Wenn Ihr Arexx- Programm beendet ist und Sie
  225.          das Ausgabe-Fenster nicht mehr benötigen, können Sie es mit dem
  226.          Close-Gadget in der linken oberen Ecke schließen.
  227.          Falls Sie in Ihrem Programm Benutzereingaben anfordern wollen, ist
  228.          es zu empfehlen, nach folgendem Beispiel ein eigenes Fenster zu
  229.          öffnen:
  230.                 x = open(outwin,"CON:0/0/400/100/MeinFenster/SMART")
  231.          Eingaben können Sie dann mit der readline-Funktion anfordern:
  232.                 eingabe = readln(outwin)
  233.          Für Ausgaben benutzen Sie dann die writeline-Funktion
  234.                 writeln(outwin,ausgabe)
  235.  
  236.   [Delete] Damit können Sie in Ihrem Script-Verzeichnis aufräumen. In dem
  237.          erscheinenden Datei-Requester sind mehrere Dateien auswählbar. Nach
  238.          dem Drücken des [ OK ]-Gadgets bekommen Sie zusätzlich einen Sich-
  239.          erheits-Requester in dem alle ausgewählten Dateien nochmals aufge-
  240.          listet sind. Erst wenn Sie jetzt nochmals [ OK ] drücken, werden die
  241.          aufgelisteten Dateien gelöscht. Das Löschen der Dateien kann sowohl
  242.          im Datei-Requester als auch im Sicherheits-Requester durch Auswahl
  243.          von [Cancel] abgebrochen werden.
  244.  
  245.   [Editor] Beim Erststart des ScriptManagers ist als Editor ED vorein-
  246.          gestellt. Wenn Sie einen anderen Editor bevorzugen, können Sie die-
  247.          sen mit der Funktion Editor dauerhaft einstellen. Auch das
  248.          Wechseln des aktuell eingestellten Editors ist jederzeit möglich.
  249.          Nach Anwahl von [Editor] erscheint ein Datei-Requester mit
  250.          dem Sie den von Ihnen gewünschten Editor auswählen können. Nach dem
  251.          Drücken des [ OK ]-Gadgets wird dieser Editor zukünftig zum Bearbei-
  252.          ten Ihrer Scripts für die Funktion [Edit] verwendet.
  253.  
  254.   [Icon] Damit können Sie Ihre Arexx-Scripts mit einem Icon versehen,
  255.          damit Sie Ihre Arexx-Programme auch von der Workbench mit einem
  256.          Maus-Doppelklick starten können. Wenn Sie das erstellte Icon mit
  257.          der Maus einmal anklicken und dann in der Worbench-Titelleiste
  258.          "Icons/Information" wählen, werden Sie feststellen, daß als Tool-
  259.          Type "CONSOLE=NIL:" eingetragen ist. Das bewirkt, daß das von Rx
  260.          beim Script-Start erzeugte Rx_Out-Fenster unterdrückt wird. Wenn
  261.          Sie jedoch das Rx_Out-Fenster für Aus- oder Eingaben Ihres Arexx-
  262.          Programms benötigen (z.B. Say, Echo, und Pull benutzen dieses Fen-
  263.          ster), löschen Sie das Tool-Type.
  264.  
  265.   [VCopy] Mit dieser Funktion haben Sie die Möglichkeit von dem im
  266.          erscheinenden Datei-Requester ausgewählten Script eine Versions-
  267.          Kopie zu erstellen. Das Script wird mit dem gleichen Namen kopiert
  268.          und eine Versionsnummer angehängt (z.B wird "MyScript" nach
  269.          "MyScript.1" kopiert). Wenn eine Versionsnummer vorhanden ist wird
  270.          diese um eins erhöht. Es werden dabei auf keinen Fall Dateien über-
  271.          schrieben. Falls schon eine Datei mit der neuen Versionsnummer vor-
  272.          handen ist, wird die Versionsnummer solange erhöht, bis die neue
  273.          Version kopiert werden kann ohne eine Datei zu überschreiben.
  274.  
  275.  
  276.   ResourceManager:
  277.   ----------------
  278.   Mit diesem Programm ist es Ihnen möglich die Arexx-Resourcen einzusehen
  279.   und zu verwalten. Alle mit den Show-Funktionen erzeugten Listen werden
  280.   zur besseren Orientierung alphabetisch sortiert. Lediglich die Funktion
  281.   [Libs] bildet hierbei eine Ausnahme. Die Libraries werden in der
  282.   Such-Reihenfolge aufgelistet. Damit kann man bei Libraries mit gleichen
  283.   Funktionsnamen nachvollziehen, welche Library benutzt wurde.
  284.   Auch das Öffnen und Schließen der Trace-Console (TCO,TCC) wird hier auf
  285.   Knopfdruck ermöglicht.
  286.  
  287.   Zusätzliche Information zum Tracing:
  288.          Verwenden Sie TS (Tracing im Single-Step) nicht zusammen mit
  289.          ArexxManager! Wenn Sie TS starten, gilt der Single-Step-Modus
  290.          für alle laufenden Arexx-Programme, also auch für ArexxManager!
  291.          Aus diesem Grund sind auch nur TCO und TCC im ArexxManager
  292.          implementiert.
  293.  
  294.   Beschreibung der einzelnen Funktionen:
  295.  
  296.   [Trace ON] Einschalten des Trace-Modus (TCO). Es wird eine Trace-Console
  297.          erzeugt, auf der mögliche Fehler in Ihren mit dem ScriptManager ge-
  298.          starteten Arexx-Programmen ausgegeben werden.
  299.  
  300.   [Trace OFF] Auschalten des Trace-Modus (TCC). Die Trace-Console wird ge-
  301.          schlossen. Wenn keine Fehler aus voherigen Programmläufen angezeigt
  302.          wurden, schließt sich die Trace-Console sofort. Falls während des
  303.          Betriebes der Trace-Console Fehler aufgetreten sind, schließt sich
  304.          die Trace-Console erst nach Beendigung der fehlerhaften Arexx-Pro-
  305.          gramme.
  306.  
  307.   [Add Lib] Damit lassen sich zusätzliche Arexx-Funktions-Libraries zu der
  308.          aktuellen Liste hinzufügen. Es erscheint ein Datei-Requester, der
  309.          auf das LIBS:-Verzeichnis voreingestellt ist und Sie dazu auffor-
  310.          dert die von Ihnen gewünschte Arexx-Library auszuwählen.
  311.  
  312.          Erst nachdem eine Arexx-Library in der Library-Liste eingetragen
  313.          ist, können die Library-Funktionen von Arexx-Programmen benutzt
  314.          werden. Dieses entspricht der Arexx-Funktion addlib(). Dabei ist
  315.          zu beachten, daß die mit [Add Lib] hinzugefügten Libraries mit dem
  316.          Standard-Offset "-30" in die Liste eingetragen werden. Wenn Sie also
  317.          eine Library mit einem ungewöhnlichen Offset aufsetzen möchten,
  318.          sollten Sie dies entweder mit
  319.                     call addlib("libraryname",prio,offset,version)
  320.          in der ArexxShell bzw. einem Arexx-Programm oder mit RXLIB von der
  321.          DOSShell aus tun. Ein falscher Library-Offset kann einen Rechnerab-
  322.          sturz verursachen.
  323.  
  324.          Weiterhin gilt es zu bedenken, daß unter Umständen mehrere Arexx-
  325.          Libraries gleichlautende Funktionen besitzen können. Das kann zu
  326.          Fehlern in Arexx-Programmen führen, die dann beim Aufruf solcher
  327.          Funktionen die falsche Library benutzen könnten.
  328.  
  329.   [Rem Lib] Zum Entfernen von Arexx-Libraries aus der Library-Liste.
  330.          Auch hierbei erscheint ein Datei-Requester, der das LIBS:-Verzeich-
  331.          nis auflistet. Die von Ihnen ausgewählte Library wird nach dem
  332.          Drücken von [ OK ] aus der Library-Liste entfernt, sofern Sie dort
  333.          eingtragen ist. Die Library wird NICHT im LIBS:-Verzeichnis ge-
  334.          löscht, sondern nur aus der sich im Arbeitsspeicher befindlichen
  335.          Arexx-Library-Liste herausgenommen. Die apig.library und die
  336.          rexxsupport.library lassen sich allerdings nicht entfernen, sie wer-
  337.          den vom ArexxManager benutzt.
  338.  
  339.   [Libs] Zeigt die aktuelle Library-Liste. Die Ausgabe ist nach der
  340.          Such-Reihenfolge sortiert, d.h. bei gleichlautenden Funktionen in
  341.          mehreren Libraries wird die am weitesten oben stehende Library be-
  342.          nutzt.
  343.  
  344.   [Clips] Listet die aktuelle Clip-Liste auf.
  345.  
  346.   [Ports] Erzeugt eine Auflistung aller aktuellen Arexx-Ports.
  347.          Auch die Ports des ArexxManagers sind in dieser Liste zu finden. Sie
  348.          werden benötigt um die Mouseclicks in den Requestern und Fenstern
  349.          des ArexxManagers an die laufende Applikation zu senden.
  350.  
  351.   [Files] Listet alle geöffneten logischen Dateien auf.
  352.  
  353.   [Ready] Zeigt eine Liste aller Tasks, die sich im READY-Status befinden.
  354.  
  355.   [Waiting] Erzeugt eine Auflistung der Tasks, die sich im WAITING-Status
  356.          befinden.
  357.  
  358.  
  359.  
  360.  
  361.   Nachwort:
  362.   =========
  363.   Zusätzliche Informationen zu den oben erwähnten und teilweise beschriebenen
  364.   Arexx-Funktionen sowie den Arexx-Tools RX TCC TCO und TS des REXXC:-Ver-
  365.   zeichnisses finden Sie in Ihrem Handbuch zur Systemsoftware im Abschnitt
  366.   "Zusätzliche Dienstprogramme".
  367.  
  368.   Für Bugreports und weitere Anregungen wäre ich sehr dankbar.
  369.   Nachstehend meine Adresse:
  370.  
  371.                             Karsten Wysocki
  372.                             An der Mühle 3
  373.                             38372 Büddenstedt
  374.  
  375.